A host and a device typically transmit and receive data to and from each other. For example in a personal computer environment, a disk drive controller (host) is often connected to a disk drive (device). The host is typically implemented using a relatively accurate host clock generator. The accuracy is often required to meet the specifications of a host processor and/or other host components.
The host and the device may be connected using a Serial Advanced Technology Attachment (SATA) standard, although other protocols may be used. The SATA standard is a simplified standard for transferring data in a packet switching network between a host and a device. SATA typically employs balanced voltage (differential) amplifiers and two pairs of wires to connect transmitters and receivers of the host and the device in a manner similar to 100BASE-TX Ethernet. The SATA standard is disclosed in “Serial ATA: High Speed Serialized AT Attachment”, Serial ATA Organization, Revision 1.0, 29 Aug. 2001, and its Supplements and Errata, which are hereby incorporated by reference.
To reduce costs, the device may be implemented using a less accurate clock. For example, the device may include a resonator, which may be crystal or ceramic based. The resonator generates a reference clock for a frequency synthesizer of a phase-locked loop (PLL), which generates a higher-frequency clock. Ceramic resonators are cheaper than crystal resonators but not as accurate. The resonator can be an individual component. Alternately, the resonator can be implemented inside a clock chip (such as crystal voltage controlled oscillator (VCO)).
When the device is implemented using lower accuracy clock generators, the transmitted data from the device to the host may not meet data transmission standards, such as SATA or other standards. As a result, the device must be implemented with a more expensive local clock generator with improved accuracy, which increases the cost of the device.